package com.laker.admin.module.excel.application;


import com.laker.admin.module.excel.domain.User;

import java.util.List;
import java.util.Set;

/**
 * @author : nihongxin
 * @date : 2021/3/22
 */
public interface UserApplication {

    /**
     * 查询所有用户信息
     *
     * @return List<User>
     */
    List<User> getUserList();

    /**
     * 保存用户
     *
     * @param user
     */
    void saveUserEntity(User user);

    /**
     * 查询所有为逻辑删除的用户
     *
     * @return List<User>
     */
    List<User> getUserListWithNotDel();

    /**
     * 根据用户主键集合获取未删除的用户
     *
     * @param userIds
     * @return List<User>
     */
    List<User> getUserListByUserIdListWithNotDel(Set<Long> userIds);

    /**
     * 根据系统id查询所有用户
     *
     * @return
     */
    List<User> getUserListBySystemId();

    /**
     * 根据用户名查询用户信息
     *
     * @param userName 用户名
     * @return
     */
    User getUserByName(String userName);
}
